package mlz.b_arrayList;

import java.util.ArrayList;

//ArrayList类的创建与使用
/*
    数组: 一旦创建就不可变,存储同种类型的数据 int[]  12345 "张" ,直接显示内存地址值
    集合: 集合的长度可变,没有定义泛型的情况下,可以存储任意类型
 */
public class ArrayListDemo01 {
    public static void main(String[] args) {
        //1.创建集合对象
        //泛型
        ArrayList<String> list = new ArrayList<>();
        //ArrayList list  = new ArrayList();

        //2.添加数据
        list.add("Java");
        list.add("Hello");
        list.add("你好");

        list.add(1,"MySQL");
        list.get(1);
        list.remove(1);
        list.set(2, "你好世界");


        System.out.println(list);//[Java, Java, 你好]

//        list.add("Java");
//        list.add(1);
//        list.add(3.14);
//        list.add(true);
//        System.out.println(list);//[Java, 1, 3.14, true]



        //3.在集合中某个下标位置插入对应的元素
        list.add(1,"MySQL");
        System.out.println(list);//[Java, MySQL, Java, 你好]

        //4.获取集合中某个下标位置上的元素
        String s = list.get(1);
        System.out.println(s);//MySQL

        //5.获取集合的大小,也就是获取集合中的元素个数
        int size = list.size();
        System.out.println(size);//4

        //6.根据下标删除某个数据
        String remove = list.remove(1);
        //remove 被删除的数据
        System.out.println("被删除的数据内容:" + remove);//被删除的数据内容:MySQL

        //7.根据具体的元素内容删除数据
        //如果集合中有相同的元素,那么会删除第一个出现的元素
        boolean b = list.remove("Java");
        System.out.println(b);//true
        System.out.println(list);//[Java, 你好]

        list.add(1,"HTML");
        System.out.println(list);

        //修改数据 -> set
        String set = list.set(2, "你好世界");
        System.out.println(set);//你好
        System.out.println(list);//[Java, HTML, 你好世界]

    }
}
















